\hypertarget{classsc2_1_1_proto_interface}{}\section{sc2\+:\+:Proto\+Interface Class Reference}
\label{classsc2_1_1_proto_interface}\index{sc2\+::\+Proto\+Interface@{sc2\+::\+Proto\+Interface}}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a5bc1f68b90e3092b0a5ddf7c64a3c447}\label{classsc2_1_1_proto_interface_a5bc1f68b90e3092b0a5ddf7c64a3c447}} 
bool {\bfseries Connect\+To\+Game} (const std\+::string \&address, int port, int timeout\+\_\+ms)
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a9f422cd831ab9518ee0e5c4bc291d225}\label{classsc2_1_1_proto_interface_a9f422cd831ab9518ee0e5c4bc291d225}} 
Game\+Request\+Ptr {\bfseries Make\+Request} ()
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a102c3b51d445df0aa9439f0dc75039bc}\label{classsc2_1_1_proto_interface_a102c3b51d445df0aa9439f0dc75039bc}} 
bool {\bfseries Send\+Request} (Game\+Request\+Ptr \&request, bool ignore\+\_\+pending\+\_\+requests=false)
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a5b1bb2eb7b513dd3703d35369a67a57b}\label{classsc2_1_1_proto_interface_a5b1bb2eb7b513dd3703d35369a67a57b}} 
Game\+Response\+Ptr {\bfseries Wait\+For\+Response\+Internal} ()
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a242d03e9673ac394386f28223e41fec8}\label{classsc2_1_1_proto_interface_a242d03e9673ac394386f28223e41fec8}} 
bool {\bfseries Ping\+Game} ()
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a92160bb840119a0bd033eb21ff2ad445}\label{classsc2_1_1_proto_interface_a92160bb840119a0bd033eb21ff2ad445}} 
void {\bfseries Quit} ()
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a03c33f48c9ef0a00f853b9f750a872a2}\label{classsc2_1_1_proto_interface_a03c33f48c9ef0a00f853b9f750a872a2}} 
void {\bfseries Set\+Error\+Callback} (std\+::function$<$ void(const std\+::string \&error\+\_\+str)$>$ error\+\_\+callback)
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a6b6cbc303c53a5b63278f4d56a85e301}\label{classsc2_1_1_proto_interface_a6b6cbc303c53a5b63278f4d56a85e301}} 
bool {\bfseries Poll\+Response} ()
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a4fe3b76cf6a174189f41e81718c9c0bf}\label{classsc2_1_1_proto_interface_a4fe3b76cf6a174189f41e81718c9c0bf}} 
S\+C2\+A\+P\+I\+Protocol\+::\+Status {\bfseries Get\+Last\+Status} () const
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a3480b4687b57ea0feea2bb158cc56c13}\label{classsc2_1_1_proto_interface_a3480b4687b57ea0feea2bb158cc56c13}} 
bool {\bfseries Has\+Response\+Pending} () const
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a398e9c12408ee8bc45b3fc7c9849fa31}\label{classsc2_1_1_proto_interface_a398e9c12408ee8bc45b3fc7c9849fa31}} 
S\+C2\+A\+P\+I\+Protocol\+::\+Response\+::\+Response\+Case {\bfseries Get\+Response\+Pending} () const
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a245d66808a9d6ac07eaa167c696ef8ac}\label{classsc2_1_1_proto_interface_a245d66808a9d6ac07eaa167c696ef8ac}} 
int {\bfseries Get\+Assigned\+Port} () const
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a3133ff62318eaf7109c161b21bab4174}\label{classsc2_1_1_proto_interface_a3133ff62318eaf7109c161b21bab4174}} 
const std\+::vector$<$ uint32\+\_\+t $>$ \& {\bfseries Get\+Stats} () const
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a5f19f76c2c0c212841b934a151ac43b9}\label{classsc2_1_1_proto_interface_a5f19f76c2c0c212841b934a151ac43b9}} 
void {\bfseries Set\+Control} (\hyperlink{classsc2_1_1_control_interface}{Control\+Interface} $\ast$control)
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a2295d11818a07258c87c4d94af8fa364}\label{classsc2_1_1_proto_interface_a2295d11818a07258c87c4d94af8fa364}} 
uint32\+\_\+t {\bfseries Get\+Base\+Build} () const
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a2f3ee8353ae1ff9db5cb06f83796f854}\label{classsc2_1_1_proto_interface_a2f3ee8353ae1ff9db5cb06f83796f854}} 
const std\+::string \& {\bfseries Get\+Data\+Version} () const
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a8fdac4b0429cbf86ec7c1edba4e326fc}\label{classsc2_1_1_proto_interface_a8fdac4b0429cbf86ec7c1edba4e326fc}} 
\hyperlink{classsc2_1_1_connection}{Connection} {\bfseries connection\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a4d79099fa89d4bcc0bb001d27d7a801e}\label{classsc2_1_1_proto_interface_a4d79099fa89d4bcc0bb001d27d7a801e}} 
std\+::string {\bfseries address\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a15e1f66ed2cd1c0808f9bf500b81d0e6}\label{classsc2_1_1_proto_interface_a15e1f66ed2cd1c0808f9bf500b81d0e6}} 
int {\bfseries port\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a84700c40de82de13b594ed1efb22a214}\label{classsc2_1_1_proto_interface_a84700c40de82de13b594ed1efb22a214}} 
unsigned int {\bfseries default\+\_\+timeout\+\_\+ms\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a13b6b03fa93720ba9c5f35791d4d8d45}\label{classsc2_1_1_proto_interface_a13b6b03fa93720ba9c5f35791d4d8d45}} 
std\+::function$<$ void(const std\+::string \&error\+\_\+str)$>$ {\bfseries error\+\_\+callback\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a01ca4c71c316152c099be11ba27eb27a}\label{classsc2_1_1_proto_interface_a01ca4c71c316152c099be11ba27eb27a}} 
S\+C2\+A\+P\+I\+Protocol\+::\+Status {\bfseries latest\+\_\+status\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a7ce86c185be3b759be60f99d0fd933e1}\label{classsc2_1_1_proto_interface_a7ce86c185be3b759be60f99d0fd933e1}} 
S\+C2\+A\+P\+I\+Protocol\+::\+Response\+::\+Response\+Case {\bfseries response\+\_\+pending\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a13bdf9947b97df63442346b2f50e2391}\label{classsc2_1_1_proto_interface_a13bdf9947b97df63442346b2f50e2391}} 
std\+::vector$<$ uint32\+\_\+t $>$ {\bfseries count\+\_\+uses\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_a7927936b004d254fba365487a1f0dcd9}\label{classsc2_1_1_proto_interface_a7927936b004d254fba365487a1f0dcd9}} 
\hyperlink{classsc2_1_1_control_interface}{Control\+Interface} $\ast$ {\bfseries control\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_aa2c505d2b3019b09e78180af425d5aa0}\label{classsc2_1_1_proto_interface_aa2c505d2b3019b09e78180af425d5aa0}} 
uint32\+\_\+t {\bfseries base\+\_\+build\+\_\+}
\item 
\mbox{\Hypertarget{classsc2_1_1_proto_interface_ade08078ef981ae448ca0851714b23f3a}\label{classsc2_1_1_proto_interface_ade08078ef981ae448ca0851714b23f3a}} 
std\+::string {\bfseries data\+\_\+version\+\_\+}
\end{DoxyCompactItemize}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
include/sc2api/sc2\+\_\+proto\+\_\+interface.\+h\end{DoxyCompactItemize}
